<?php
    namespace App\Http\Controllers;

	use App\Student;
    use Illuminate\Support\Facades\DB;

    class StudentController extends Controller{
    	public function student(){
    		//return 'student-info';
    		//测试连接数据库是否成功


    		//1、查询
    		//$data = DB::select('select * from student_info');
    		//dd($data);

    		//2、插入
    		//$update = DB::insert('insert into student_info (name,age) values(?,?)',['zz',19]);
    		//var_dump($update);

    		//3、更新
    		//$bool = DB::update('update student_info set age=? where name =?',[30,'zz']);
    		//var_dump($bool);

    		//4、删除
    		$del = DB::delete('delete from student_info where id=2');
    		dd($del);
    	}

    	/*
          laravel查询构造器的联系使用
    	*/
    	public function query1(){
    		//1、插入数据--返回true
    		// $insert = DB::table('student_info')->insert(
    		// 	['name'=>'waittingWang','age'=>22]
    		// );

    		//2、插入数据--返回自增ID
    		// $insert_id = DB::table('student_info')->insertGetId(
            //['name'=>'panzi','age'=>24]
    		// );
    		// var_dump($insert_id);


    		//3、新增多条数据
    	    // $bool = DB::table('student_info')->insert([['name'=>'aa','age'=>10],['name'=>'bb','age'=>12]]);
    	    // var_dump($bool);

    		//4、更新数据--返回影响的行数
    		// $update = DB::table('student_info')
    		//           ->where('id',6)
    		//           ->update(['age'=>33]);
    		// var_dump($update);

    		// $update = DB::table('student_info')
    		//           ->where('id',6)
    		//           ->update(['sex'=>'男']);
    		// var_dump($update);
            
            //5、自增--int型字段自增--返回受影响的行数
            // $bool = DB::table('student_info')->increment('age',1);
            // var_dump($bool);

            //自减--int型字段值自减--返回受影响的行数
            // $bool = DB::table('student_info')->decrement('age',1);
            // dd($bool);

    		//自减并且修改数据
            // $bool = DB::table('student_info')->decrement('age',1,['name'=>'imooc']);
            // dd($bool);

            //6、删除数据
            // $del = DB::table('student_info')
            //      ->where('id',4)
            //      ->delete();
            // dd($del);

            //清空表--truncate（）
            //$res = DB::table('student-info')->truncate();

            //7、查询、获取数据
            // $list = DB::table('student_info')->get();
            // dd($list);

            //查询数据并排序
            // $list = DB::table('student_info')
            //        ->orderBy('age','desc')
            //        ->get();
            // //var_dump($list);

            // foreach($list as $data){
            //       //var_dump($data);
            // 	echo $data->name.'<br />';
            // }

            //增加查询条件
            // $list = DB::table('student_info')
            //        ->where('id','>=',2)
            //        ->get();
            // var_dump($list);


           //增加多个查询条件
           // $list = DB::table('student_info')
           //       ->whereRaw('id > ? and age > ?',[3,20])
           //       ->get();
           // var_dump($list);

    		//查询指定字段的值
    		// $info = DB::table('student_info')
    		//       ->pluck('name');
    		// var_dump($info);
            
            //查询指定字段并以ID作为下标
            // $info = DB::table('student_info')->pluck('name','id');
            // var_dump($info);
  			
  			//select语句指定查询的字段
  			// $list = DB::table('student_info')
  			//       ->select('name','age')
  			//       ->get();
  			// var_dump($list);

    		//从数据库表中获取单个列或者行
    		// $list = DB::table('student_info')
    		// ->where('name','panzi')
    		// ->first();
    		// var_dump($list);
    		// echo $list->name;

    		//获取指定的某个字段的值
    		// $list = DB::table('student_info')
    		// ->where('name','panzi')
    		// ->value('create_time');
    		// var_dump($list);

    		//结果分块
    	    // DB::table('student_info')
    		// ->orderBy('id','desc')
    		// ->chunk(2,function($list){
    		// 		foreach($list as $data){
    		// 			echo $data->name.'<br />';
    		// 		}
    	    // });

    		//select原始表达式：指定查找
			// $list = DB::table('student_info')
			//       ->select('id','name','age')
			//       ->get();
		    //var_dump($list);

		     //聚合函数
             //$num = DB::table('student_info')->count();
             //$max = DB::table('student_info')->max('age');
             //$min = DB::table('student_info')->min('age');
    		 //还有avg（求平均数）和sum（求总和）
             //dd($min);
    	}


    	public function test(){
    		//echo  'hello waittingWang!';
            //$res = Student::getStudentInfo();
            //var_dump($res);
            // foreach($res as $data){
            // 	var_dump($data->id);
            // }
            $row = Student::get();
            //var_dump($row);
            //将获取的数组传送到视图
            return view('student.student',compact('row'));
    	}

    	//向数据库插入新的数据记录
    	public function orm(){
          //  $student = new Student();
          //  $student->name = 'ttt';
          //  $student->age  = 20;
          //  $student->sex  = '男';
          //  //$res = $student->save();
          //  $res = Student::find(6);
          // // echo strtotime($res->create_time);     -----将时间转换成时间戳
          // // 如果是时间戳，转化为正常的时间格式：   ----- date('Y-m-d H:i:s',$time)
          //  echo $res->create_time;
        
        
           //使用create方法向数据库插入数据记录
            $res = Student::create(
                ['name'=>'qqq','age'=>22,'sex'=>'女']
            );
            dd($res);
    	}
    }
?>